
 : IR 
  BEGIN $205C @ $FFFF = IF ELSE TIB 80 EXPECT THEN 
   BEGIN
    WORD DUP ( a l l )
	WHILE ( a l )
	 2DUP ( a l a l )
	 FIND ( a l da )
	 DUP IF ( a l da )
	   -ROT 2DROP ( da )
	   DUP ( da da )
	   >CFA SWAP ( xt da )
	   2+ @ $8000 AND ( xt imm )
	   IF ( xt )
	     EXECUTE ( )
	   ELSE
	     STATE @ ( xt state )
		 IF , ELSE EXECUTE THEN
	   THEN
	 ELSE ( a l da )
	   DROP   ( a l )
	   2DUP   ( a l a l )
	   NUMBER ( a l nh nl er )
	   DUP    ( a l nh nl er er )
	   2 AND  ( a l nh nl er fl )
	   IF     ( a l nh nl er )
	     DROP 2DROP ( a l )
	     ." ERROR:" TYPE CR ( -- )
	   ELSE   ( a l nh nl er )
	     1 AND ( A L NH NL FL )
         IF ( A L NH NL )
	       STATE @ IF
	         SWAP ( a l nl nh )
	         COMPILE LIT , ( a l nl )
		     COMPILE LIT , ( a l )
		   ELSE
		     2SWAP
		   THEN
	     ELSE ( a l nh nl )
	       STATE @
		   IF
		     COMPILE LIT , DROP
		   ELSE
		     NIP -ROT
		   THEN
	     THEN 
	     2DROP
	   THEN
	 THEN
   REPEAT
   2DROP
   ." ok-" DEPTH . CR
   0 $205C !
  AGAIN ;

